import 'package:aio/aio.dart';
import 'package:app/src/config/app_data_config.dart';

class Url {
  static String baseurl({String? baseUrl}) {
    //fixme 兼容用户是否写入http://;防止用户手动输入。
    var it = baseUrl;
    if (it == null) {
      it = AppDataConfig.getAdress();
    }
    if (it == null) {
      return "";
    }
    if (it.contains("http://") || it.contains("https://")) {
      if (it.contains("/")) {
        return it;
      } else {
        return it + "/";
      }
    } else {
      if (it.contains("/")) {
        return "http://" + it;
      } else {
        return "http://" + it + "/";
      }
    }
  }

  //统一获取文件地址路径。
  static String? getFileUrl(String? path) {
    if (StringUtils.isEmpty(path)) {
      return null;
    }
    if (path!.contains("http")) {
      return path; //fixme 有域名。
    }
    var FactoryURL =
        AppDataConfig.getFactory()?.FactoryURL; //fixme 没有域名，加上当前工厂的域名。
    if (FactoryURL != null && FactoryURL.length > 0) {
      return FactoryURL + "/" + path;
    }
    return path;
  }

  //版本更新 [接口90003]
  static String sysappversion = "Android/getappversion.ashx";

  //接口90004;图片上传
  static String syspicupload = "syspicupload.ashx";

  //接口90005 获取工厂列表
  static String sysfactorygetlist = "sysfactorygetlist.ashx";

  ///加班审核；排班：获取班次班组的接口
  static String getMyGroupBcInfo = "Android/getMyGroupBcInfo.ashx";

  //接口90006 ;获取app编码（密钥，安装代码）
  static String sysgetappcode = "sysgetappcode.ashx";

  //接口60000 登录
  static String userlogin = "Android/userlogin.ashx";

  //接口60001 获取用户信息
  static String getpersoninfo = "Android/getpersoninfo.ashx";

  //接口60002 修改密码
  static String changepassword = "Android/changepassword.ashx";

  //接口60003 修改用户信息
  static String setpersoninfo = "Android/setpersoninfo.ashx";

  //扫码登录
  static String setscancode = "Android/setscancode.ashx";

  //广告通知位
  static String getcompanynotice = "Android/getcompanynotice.ashx";

  //接口60005 返回销售经理或客服经理条目
  static String Managergetlist = "Android/Managergetlist.ashx";

  //派工审核查询条件：获取所属工序或者班组
  static String getOtherWorkApply = "Android/getOtherWorkApply.ashx";

  //物料请购；获取物料种类；品牌；创建人，项目名称;供应商（GetSupplierDDL）
  static String getOtherPurchaseDLL = "Android/getOtherPurchaseDLL.ashx";

  //物料请购获取物料库存
  static String getMaterialStockNum = "Android/getMaterialStockNum.ashx";

  //fixme 菜单权限
  static String checkgetlimit = "Android/checkgetlimit.ashx";

  //接口60008 fixme 获取列表显示条目数字
  static String checkgetnum = "Android/checkgetnum.ashx";

  //待审核通知消息接口；fixme 待处理事项
  static String AjaxMessage = "Android/AjaxMessage.ashx";

  //接口60004 返回待审批合同列表 fixme 待审核列表
  static String contractdogetlist = "Android/contractdogetlist.ashx";

  //接口60006 返回待审核合同信息（全部信息）；fixme 待审核详情
  static String contractapplygetinfo = "Android/contractapplygetinfo.ashx";

  //接口60007 提交合同审核
  static String contractapply = "Android/contractapply.ashx";

  //合同审核信息（提成比例审核里的合同信息）
  // static String getContractInfo = "Android/getContractInfo.ashx";
  static String getContractInfo = "Android/getContract.ashx";

  //接口60009 开票审核导出单据
  static String documentexport = "Android/documentexport.ashx";

  //接口90052 短信验证码
  static String getcaptcha = "Android/getcaptcha.ashx";

  //打卡签到获取最新的签到记录接口;(会获取签到班组，以及所有的班组和班次信息)
  static String AppSignInHandler = "Android/AppSignInHandler.ashx";

  //打卡签到；上班打卡；下班打卡。或打卡记录。（有type字段区分）
  //目前手机上只能打卡签到； 确认操作，需要到电脑上去确认。接口：沈安江写的
  static String checkTimeHandler = "Android/checkTimeHandler.ashx";

  ///物料请购，列表获取接口。
  static String AjaxPurchase = "Android/AjaxPurchase.ashx";

  ///获取部门或申请人
  static String SelectPersonnel = "Android/SelectPersonnel.ashx";

  ///物料编码规则
  static String AjaxSales = "/Android/AjaxSales.ashx";

  ///获取物料编码
  // public class obtain
  // {
  // public string MaterialType { get; set; }
  // public string Id { get; set; }
  // }
  static String AjaxStore = "/Android/AjaxStore.ashx";

  ///采购合同审核，历史合同
  static String GetPurContractBodyInfo = "/Android/GetPurContractBodyInfo.ashx";

  ///设备管理：设备保修，工单中心，我的工单；通过参数type区别
  static String repairOrder = "/repairOrder.ashx";

}
